package com.du.design.status;

import java.util.ArrayList;
import java.util.List;

/**
 * @desc:
 * @author: shuangdu
 * @date: 2021/9/7
 * @since: 1.8
 */
public class DataNodeList {

    private List<NodeChain> nodes;

    public DataNodeList() {
        // 构建节点
        nodes = new ArrayList<>();
        // 结束
        NodeChain nodeChain4 = new NodeChain();
        nodeChain4.setName("结束");
        nodeChain4.setEnd(true);

        // 领导
        NodeChain nodeChain3 = new NodeChain();
        nodeChain3.setName("领导");

        // 主管
        NodeChain nodeChain2 = new NodeChain();
        nodeChain2.setName("主管");

        // 开始
        NodeChain nodeChain1 = new NodeChain();
        nodeChain1.setName("开始");
        nodeChain1.setStart(true);


        // 开始 -> 主管 -> 领导 -> 结束
        nodeChain1.setNext(nodeChain2);

        nodeChain2.setPre(nodeChain1);
        nodeChain2.setNext(nodeChain3);

        nodeChain3.setPre(nodeChain2);
        nodeChain3.setNext(nodeChain4);

        nodeChain4.setPre(nodeChain3);

        nodes.add(nodeChain1);
        nodes.add(nodeChain2);
        nodes.add(nodeChain3);
        nodes.add(nodeChain4);
    }

    public List<NodeChain> getNodes() {
        return this.nodes;
    }

    public NodeChain currentNode(int index) {
        if (index > nodes.size() -1) {
            return null;
        }
        return nodes.get(index);
    }

}
